Software applications that enable a user to interact with an external information source that is located remotely from the user are known. The external information source may include, for example, data stores associated with one or more databases. As another example, information within the external information source may include information generated by one or more applications being executed remotely from the user. The software applications that enable this interaction typically receive requests from the user and generate requests to the external information source. In addition, the software applications may receive responses from the external information source to the requests generated by the software applications, and the software applications may convey these responses to the user.
Typically, demonstrations of the interaction between these conventional applications and an external information source may require an actual connection with the external information source. This may prove unmanageable in some instances, as a connection with an external information source may not be convenient. Further, providing access to an external information source via the conventional application for the purposes of a demonstration may alter the information within the information source. This may compromise the integrity of the external information source, require the external information source to be restored (which may be a relatively time and/or resource consuming process), and/or be associated with other drawbacks.
As an alternative, a demonstration application may be written that provides a demonstration illustrating some of the functionality of the actual application with respect to an external information source. However, the demonstration application may not really be manipulating and/or accessing information, but instead may simply be programmed to complete a series of predetermined operations. Thus, a user may not be able to deviate from the “script” of the predetermined demonstration. This may prevent the user from observing the complete set of functionality provided by the actual application. Further, the use of a demonstration application may require an entirely separate application (e.g., the demonstration application) to be written in order to provide the demonstration. Under this paradigm, any changes made to the software application must then be propagated into the separate demonstration application in order to provide a demonstration of the software application.
These and other drawbacks associated with the demonstration of applications that enable a user to interact with an external information source exist.